package com.hzhr.iot.device.model.collectData;

import com.hzhr.iot.core.annotation.CygModel;
import com.hzhr.iot.core.annotation.CygProperty;
import com.hzhr.iot.device.entity.CollectDataEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

@ApiModel(value = "CollectDataModel", description = "采集数据模型")
@CygModel(entity = CollectDataEntity.class)
public class CollectDataModel {
    @ApiModelProperty(value = "说明 : 编号", required = true)
    @CygProperty(show = "", entityProp = "id")
    private Integer id;

    @ApiModelProperty(value = "说明 : 采集设备编号(show_info=true时展示; 关联: device_service.collectDevice.id)")
    @CygProperty(show = "_show_info", entityProp = "collectDeviceId")
    private Integer collectDeviceId;
    @ApiModelProperty(value = "说明 : 物联网设备编号(show_info=true时展示; 关联: device_service.iotDevice.id)", required = true)
    @CygProperty(show = "_show_info", entityProp = "iotDeviceId")
    private Integer iotDeviceId;
    @ApiModelProperty(value = "说明 : 当前时间(show_info=true时展示; 毫秒级时间戳)", required = true)
    @CygProperty(show = "_show_info", entityProp = "currentTm")
    private Long currentTm;
    @ApiModelProperty(value = "说明 : 当前读数(show_info=true时展示)", required = true)
    @CygProperty(show = "_show_info", entityProp = "currentValue")
    private Double currentValue;
    @ApiModelProperty(value = "说明 : 冻结时间(show_info=true时展示; 毫秒级时间戳)")
    @CygProperty(show = "_show_info", entityProp = "freezingTime")
    private Long freezingTime;
    @ApiModelProperty(value = "说明 : 冻结指数(show_info=true时展示)")
    @CygProperty(show = "_show_info", entityProp = "freezingValue")
    private Double freezingValue;
    @ApiModelProperty(value = "说明 : 标况累计流量(show_info=true时展示)")
    @CygProperty(show = "_show_info", entityProp = "staTotalFlow")
    private Double staTotalFlow;
    @ApiModelProperty(value = "说明 : 工况累计流量(show_info=true时展示)")
    @CygProperty(show = "_show_info", entityProp = "workTotalFlow")
    private Double workTotalFlow;
    @ApiModelProperty(value = "说明 : 受干扰累计流量(show_info=true时展示)")
    @CygProperty(show = "_show_info", entityProp = "disTotalFlow")
    private Double disTotalFlow;
    @ApiModelProperty(value = "说明 : 标况瞬时流量(show_info=true时展示)")
    @CygProperty(show = "_show_info", entityProp = "staFlowRate")
    private Double staFlowRate;
    @ApiModelProperty(value = "说明 : 工况瞬时流量(show_info=true时展示)")
    @CygProperty(show = "_show_info", entityProp = "workFlowRate")
    private Double workFlowRate;
    @ApiModelProperty(value = "说明 : 压力(show_info=true时展示)")
    @CygProperty(show = "_show_info", entityProp = "pressure")
    private Double pressure;
    @ApiModelProperty(value = "说明 : 温度(show_info=true时展示)")
    @CygProperty(show = "_show_info", entityProp = "temperature")
    private Float temperature;
    @ApiModelProperty(value = "说明 : 阀门状态代码(show_info=true时展示; 关联: device_service.options.code, typeCode = 'VALVE_STATUS')")
    @CygProperty(show = "_show_info", entityProp = "valveStatusCode")
    private String valveStatusCode;
    @ApiModelProperty(value = "说明 : 阀门状态描述(show_info=true时展示)")
    @CygProperty(show = "_show_info", entityProp = "valveStatusExt_des")
    private String valveStatusDes;
    @ApiModelProperty(value = "说明 : 信号强度(show_info=true时展示)")
    @CygProperty(show = "_show_info", entityProp = "signalStrength")
    private Integer signalStrength;
    @ApiModelProperty(value = "说明 : 电池电压(show_info=true时展示)")
    @CygProperty(show = "_show_info", entityProp = "cellVoltage")
    private Float cellVoltage;
    @ApiModelProperty(value = "说明 : 基站编号(show_info=true时展示)")
    @CygProperty(show = "_show_info", entityProp = "cellId")
    private String cellId;
    @ApiModelProperty(value = "说明 : 报警代码(show_info=true时展示; 如果有多个报警代码，用逗号隔开)")
    @CygProperty(show = "_show_info", entityProp = "alarmCodes")
    private String alarmCodes;

    @ApiModelProperty(value = "说明 : 报警代码(show_collectDevice=true时展示)")
    @CygProperty(show = "_show_collectDevice", entityProp = "collectDeviceExt_code")
    private String collectDeviceCode;

    @ApiModelProperty(value = "说明 : 信号覆盖等级(show_ext=true时展示)")
    @CygProperty(show = "_show_ext")
    private String ecl;
    @ApiModelProperty(value = "说明 : 信号覆盖强度(show_ext=true时展示)")
    @CygProperty(show = "_show_ext")
    private String rsrq;
    @ApiModelProperty(value = "说明 : 接收灵敏度CSQ(show_ext=true时展示)")
    @CygProperty(show = "_show_ext")
    private String rssi;
    @ApiModelProperty(value = "说明 : 信噪比(show_ext=true时展示)")
    @CygProperty(show = "_show_ext")
    private String snr;
    @ApiModelProperty(value = "说明 : 小区标识(show_ext=true时展示)")
    @CygProperty(show = "_show_ext")
    private String pci;
    @ApiModelProperty(value = "说明 : 频点(show_ext=true时展示)")
    @CygProperty(show = "_show_ext")
    private String earfcn;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getCollectDeviceId() {
        return collectDeviceId;
    }

    public void setCollectDeviceId(Integer collectDeviceId) {
        this.collectDeviceId = collectDeviceId;
    }

    public Integer getIotDeviceId() {
        return iotDeviceId;
    }

    public void setIotDeviceId(Integer iotDeviceId) {
        this.iotDeviceId = iotDeviceId;
    }

    public Long getCurrentTm() {
        return currentTm;
    }

    public void setCurrentTm(Long currentTm) {
        this.currentTm = currentTm;
    }

    public Double getCurrentValue() {
        return currentValue;
    }

    public void setCurrentValue(Double currentValue) {
        this.currentValue = currentValue;
    }

    public Long getFreezingTime() {
        return freezingTime;
    }

    public void setFreezingTime(Long freezingTime) {
        this.freezingTime = freezingTime;
    }

    public Double getFreezingValue() {
        return freezingValue;
    }

    public void setFreezingValue(Double freezingValue) {
        this.freezingValue = freezingValue;
    }

    public Double getStaTotalFlow() {
        return staTotalFlow;
    }

    public void setStaTotalFlow(Double staTotalFlow) {
        this.staTotalFlow = staTotalFlow;
    }

    public Double getWorkTotalFlow() {
        return workTotalFlow;
    }

    public void setWorkTotalFlow(Double workTotalFlow) {
        this.workTotalFlow = workTotalFlow;
    }

    public Double getDisTotalFlow() {
        return disTotalFlow;
    }

    public void setDisTotalFlow(Double disTotalFlow) {
        this.disTotalFlow = disTotalFlow;
    }

    public Double getStaFlowRate() {
        return staFlowRate;
    }

    public void setStaFlowRate(Double staFlowRate) {
        this.staFlowRate = staFlowRate;
    }

    public Double getWorkFlowRate() {
        return workFlowRate;
    }

    public void setWorkFlowRate(Double workFlowRate) {
        this.workFlowRate = workFlowRate;
    }

    public Double getPressure() {
        return pressure;
    }

    public void setPressure(Double pressure) {
        this.pressure = pressure;
    }

    public Float getTemperature() {
        return temperature;
    }

    public void setTemperature(Float temperature) {
        this.temperature = temperature;
    }

    public String getValveStatusCode() {
        return valveStatusCode;
    }

    public void setValveStatusCode(String valveStatusCode) {
        this.valveStatusCode = valveStatusCode;
    }

    public Integer getSignalStrength() {
        return signalStrength;
    }

    public void setSignalStrength(Integer signalStrength) {
        this.signalStrength = signalStrength;
    }

    public Float getCellVoltage() {
        return cellVoltage;
    }

    public void setCellVoltage(Float cellVoltage) {
        this.cellVoltage = cellVoltage;
    }

    public String getCellId() {
        return cellId;
    }

    public void setCellId(String cellId) {
        this.cellId = cellId;
    }

    public String getAlarmCodes() {
        return alarmCodes;
    }

    public void setAlarmCodes(String alarmCodes) {
        this.alarmCodes = alarmCodes;
    }

    public String getEcl() {
        return ecl;
    }

    public void setEcl(String ecl) {
        this.ecl = ecl;
    }

    public String getRsrq() {
        return rsrq;
    }

    public void setRsrq(String rsrq) {
        this.rsrq = rsrq;
    }

    public String getRssi() {
        return rssi;
    }

    public void setRssi(String rssi) {
        this.rssi = rssi;
    }

    public String getSnr() {
        return snr;
    }

    public void setSnr(String snr) {
        this.snr = snr;
    }

    public String getPci() {
        return pci;
    }

    public void setPci(String pci) {
        this.pci = pci;
    }

    public String getEarfcn() {
        return earfcn;
    }

    public void setEarfcn(String earfcn) {
        this.earfcn = earfcn;
    }

    public String getValveStatusDes() {
        return valveStatusDes;
    }

    public void setValveStatusDes(String valveStatusDes) {
        this.valveStatusDes = valveStatusDes;
    }

    public String getCollectDeviceCode() {
        return collectDeviceCode;
    }

    public void setCollectDeviceCode(String collectDeviceCode) {
        this.collectDeviceCode = collectDeviceCode;
    }
}
